In applications and equipment development, it is necessary to test equipment and devices such as integrated circuits. In order for this testing to take place, development boards with the appropriate hardware and software required for carrying out a test are provided. Test commands are provided to and carried out by the development board. The test commands are run over a test interface provided on the development board. The test interface is compliant with a testing standard. Testing standards define, for example, how the tests will be carried out and how test commands will be interpreted.
An example of such a testing standard is a Joint Tests Action Group (JTAG) standard that provides testing functionality using a Test Access Port (TAP) Controller. TAP controllers are used to effect communication of test data on and off chip via a test interface which is known as a JTAG port. The functions of known TAP controllers are defined by IEEE Standard 1149.1-1990. That standard defines test logic which can be included in an integrated circuit to provide standardised approaches to testing the interconnections between integrated circuits, testing the integrated circuit itself, and observing or modifying circuit activities during the integrated circuits “normal” or “user mode” operation.
According to the IEEE standard, the TAP controller is capable of implementing a variety of different test modes. In each of these test modes, test data is supplied to the chip via an input pin of the TAP controller, and resultant data following the test is supplied off-chip via an output pin of the TAP controller. The resultant data is dependent on the test data and is compared with expected data to check the validity of the test. The input and output pins are referred to respectively as TDI and TDO. Many existing integrated circuits already incorporate a TAP controller of this type with the input and output pins TDI and TDO.
A tester may not be in the same geographical location as a development board that is to be tested. The computer from which the test commands originate will transmit test commands to a remote development board over a network.
Because the geographical difference between the development board and the tester, development boards are often permanently left on in order to facilitate remote access from locations in different time zones. The development boards are therefore continuously and unnecessarily consuming power. Additionally, while software resets can be carried out using a test command, a hard reset requiring power to the development board to be removed is difficult when accessing the board remotely.